package comnote.service.impl;

import comnote.dao.UserDao;
import comnote.dao.impl.UserDaoImpl;
import comnote.entity.User;
import comnote.service.Userservice;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.stereotype.Service;

import javax.annotation.Resource;
@Service("userService")
public class UserServiceImpl implements Userservice {

//    @Autowired(required = false) //在默认情况下，required属性值为true，即必须找到匹配的Bean完成装配，否则抛出异常
//    @Qualifier("userDao") //指定对于Bean的名称方式来区分

   // @Resource  //有一个name属性，默认情况下，Spring将这个属性的值解释为要注入的Bean的名称
   // @Resource(name="userDao") //指定查找依赖然后注入，否则字段名进行匹配
    //@Resource(type = UserDaoImpl.class)  //用于显示指定依赖Bean的具体类型
    @Autowired //采用了按类型匹配的方式为属性自动装配合适的依赖对象，类匹配
    private UserDao userDao;

    //无参构造
    public UserServiceImpl() {
    }

    public UserServiceImpl(UserDao userDao) {
        this.userDao = userDao;
    }

    @Override
    public boolean save(User user) {
        int i=1;
        if(i==0){
            throw new RuntimeException("============出现异常，保存失败===========");
        }
        return userDao.insert(user)>0;
    }
}
